import { request } from '@umijs/max';

/**
 *
 * @param params 获取医生信息
 * @returns
 */
export const getDoctorsInfo = async () => {
  // 这里需要返回一个 Promise,在返回之前你可以进行数据转化
  // 如果需要转化参数可以在这里进行修改
  const msg = await request('/admin/doctors');
  console.group('当前医生列表信息');
  console.log(msg);
  console.groupEnd();
  return {
    data: msg.data.list.map((v: any) => {
      v.doctorTitleInfo = v.doctorTitleInfo?.name;
      v.hospitalInfo = v.hospitalInfo?.name;
      return v;
    }),
    // success 请返回 true，
    // 不然 table 会停止解析数据，即使有数据
    success: msg.success,
    // 不传会使用 data 的长度，如果是分页一定要传
    total: msg.data.total,
  };
};

/**
 * 新增医生
 * @param data
 * @returns
 */
export const addDoctor = (data: any) => {
  console.log(data);

  if (data.avatar && data.avatar.length === 0) data.image = '';

  return request('/admin/doctors', {
    method: 'POST',
    data: { ...data, avatar: data.avatar ? data.avatar[0]?.response.data : '' },
  });
};

export const getDoctorTags = async () => {
  // 这里需要返回一个 Promise,在返回之前你可以进行数据转化
  // 如果需要转化参数可以在这里进行修改
  const msg = await request('/admin/doctor_tags');
  console.group('当前医生标签信息');
  console.log(msg);
  console.groupEnd();
  return msg.data.list.map((v: any) => ({ value: v.name, label: v.name }));
};

export const getHospitals = async () => {
  // 这里需要返回一个 Promise,在返回之前你可以进行数据转化
  // 如果需要转化参数可以在这里进行修改
  const msg = await request('/admin/hospitals');
  console.group('当前医生标签信息');
  console.log(msg);
  console.groupEnd();
  return msg.data.list.map((v: any) => ({ value: v.id, label: v.name }));
};
